// NOLINTBEGIN
#include <iostream>
using namespace std;

// 定义一个点类
class Point {
 public:
  // 设置点的坐标（初始化0,0）
  Point(float x = 0, float y = 0);
  // 获取x坐标

  // 获取y坐标
  // 重载输出流操作符，输出点的信息
  // 点类构造函数实现
  // 设置点的坐标实现
  // 重载输出流操作符实现

 protected:
  float x;
  float y;
};

// 定义一个圆类，继承自点类
// 设置圆的半径
// 获取圆的半径
// 计算圆的面积
// 重载输出流操作符，输出圆的信息
// 圆类构造函数实现
// 设置圆的半径实现
// 获取圆的半径实现
// 计算圆的面积实现
// 重载输出流操作符实现

// 定义一个圆柱体类，继承自圆类
// 设置圆柱体的高度
// 获取圆柱体的高度
// 计算圆柱体的表面积
// 计算圆柱体的体积
// 重载输出流操作符，输出圆柱体的信息
// 圆柱体构造函数实现
// 设置圆柱体高度实现
// 获取圆柱体高度实现
// 计算圆柱体表面积实现
// 计算圆柱体体积实现
// 重载输出流操作符实现
// 把圆柱体的信息输出到控制台
// 输出圆柱体的原始信息
// 输出更新后的圆柱体信息
// 将圆柱体引用赋值给点引用
// 将圆柱体引用赋值给圆引用
// NOLINTEND
